package com.example.management.system.service

import com.example.management.common.domain.Tree
import com.example.management.system.domain.DeptDO


/**
 * 部门管理
 *
 * @author chglee
 * @email 1992lcg@163.com
 * @date 2017-09-27 14:28:36
 */
interface DeptService {

    val tree: Tree<DeptDO>

    operator fun get(deptId: Long?): DeptDO

    fun list(map: Map<String, Any>): List<DeptDO>

    fun count(map: Map<String, Any>): Int

    fun save(sysDept: DeptDO): Int

    fun update(sysDept: DeptDO): Int

    fun remove(deptId: Long?): Int

    fun batchRemove(deptIds: Array<Long>): Int

    fun checkDeptHasUser(deptId: Long?): Boolean
}
